package cn.iocoder.yudao.module.hs.controller.admin.materialmode.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import javax.validation.constraints.*;

@Schema(description = "管理后台 - 机型信息新增/修改 Request VO")
@Data
public class MaterialModeSaveReqVO {

    @Schema(description = "机型信息主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "15040")
    private Long id;

    @Schema(description = "机型编号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "机型编号不能为空")
    private String modeCode;

    @Schema(description = "客户ID", example = "3209")
    private Long customerId;

    @Schema(description = "客户名称", example = "王五")
    private String customerName;

    @Schema(description = "生产仓ID", example = "26765")
    private Long productionWarehouseId;

    @Schema(description = "生产仓名称", example = "张三")
    private String productionWarehouseName;

    @Schema(description = "三方仓ID", example = "22130")
    private Long tripartiteWarehouseId;

    @Schema(description = "三方仓名称", example = "李四")
    private String tripartiteWarehouseName;

    @Schema(description = "是否落地检：1-是；0-否")
    private Integer landingQc;

    @Schema(description = "三方仓ID", example = "22130")
    private List<Long> tripartiteWarehouseIds;

    @Schema(description = "客户零件号")
    private String partNumber;

    @Schema(description = "客户零件简号")
    private String partNumberShort;

    @Schema(description = "是否直发客户：1-是；0-否")
    private Integer isDirect;

    @Schema(description = "物料箱容量")
    private Integer boxCapacityCount;
}